The modern world thrives on data, and virtual assistant apps and devices make different types of interesting data accessible to users who wish to make queries. Some examples of data are hourly weather forecasts; minute to minute status of traffic on local roads; scores of sports games in progress; stock prices; news headlines; retail store item stock and sale prices; recipes; locations and ratings of restaurants; Wikipedia articles; and jury findings in trial case law.
Many providers of access to data make it available through communication protocols such as JavaScript Object Notation (JSON), Extensible Hypertext Markup Language (XHTML), or plain text responses to HyperText Transport Protocol (HTTP) POST, Asynchronous Javascript and eXtensible markup language (AJAX), or Simple Object Access Protocol (SOAP) requests through web Application Program Interface (API) hits. Various other types of access to data in databases are possible. Many providers give requesters, such as virtual assistants, access through unique ID keys that track numbers of requests and, for each request, deduct credits. Virtual assistant services agree to contracts to buy credits, typically at prices of a small fraction of a penny for each credit. Contracts can take the form of signed documents, verbal agreements, online clicked acknowledgments, credit card authorizations, or others. In various cases, virtual assistant providers charge users for the service or charge advertisers to show specific ads in response to virtual assistant queries.
Many types of data are available from multiple providers. For-profit data providers tend to compete for the business of selling credits. Some data providers are non-profit and provide data access free of charge. For example, weather forecast data is available from The Weather Channel at weather.com, The Weather Company a wunderground.com, AccuWeather, Inc. at accuweather.com, and United States National Weather Service at weather.gov.
Different data sources have different advantages. Some charge less money per request. Some have data that are more accurate. Some have data that is more precise, such as ratings on a scale of 1 to 10 instead of 1 to 5 stars. Some respond more quickly, that is, with lower latency. Some have more bandwidth to handle multiple concurrent requests. Some have better data formats and details. Some are more dependably available than others. Some are seasonally available, such as sports standings, occasionally available, such as democratic election campaign polls, or daily available such as intensity of sunlight. Various data sources have other differentiating advantages specific to the types of data that they provide. Virtual assistant services must choose data sources, and their choice of data sources strongly affects the satisfaction that they provide to users.
The disclosed invention provides an improved approach for selecting data sources by a virtual assistant.